Cache is memory that is generally near in proximity to a processor. At least in part, the proximity of the cache to the processor makes access to the cache by the processor faster than processor access to other types of memory, such as RAM or hard drives. Cache often holds data that has recently been accessed or that is anticipated to be needed. For example, when used with a network router, cache may hold addresses of destination nodes to which packets have been sent recently in the expectation that additional packets may be routed to those nodes in the near future and so those addresses will be easily accessible.
Cache typically has a variety of attributes including associativity, a number of sets used, cache line size and cache size. Certain of those attributes may be related to data storage, while other of those attributes may be used to define a location in the cache, known as a cache address, where the data is stored. Those attributes are furthermore typically set in hardware at the time of manufacturing.